home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / asm / d86v401.zip / D01.DOC < prev    next >
Text File  |  1995-03-05  |  12KB  |  275 lines

  1. CHAPTER 1   INTRODUCTION AND LEGAL TERMS
  2.  
  3.  
  4. Introduction
  5.  
  6. D86 is a screen-oriented assembly language debugger for the
  7. IBM-PC, compatibles, and most not-so-compatibles (Wang-PC, TI-PC,
  8. Tandy 2000, Sanyo 55x, Zenith Z-100, and DEC Rainbow).  D86 is
  9. the finest debugger available, at any price under any conditions,
  10. for the following:
  11.  
  12. 1. Learning 8086 assembly language.
  13.  
  14. 2. Exploring the machine state of your computer (memory
  15.    structure, registers, etc.)
  16.  
  17. 3. Doing assembly language program development using my A86
  18.    assembler.
  19.  
  20. 4. Doing any kind of debugging involving the floating point (8087
  21.    or 287) coprocessor.
  22.  
  23. In contrast to software firms who attempt to restrict the
  24. distribution of their software through protection schemes, I
  25. encourage free distribution, and trust that those who use my
  26. products will pay for them.  Please keep in mind the fundamental
  27. good spirit of free-distribution software as you endure the
  28. following barrage of legalities.  Then evaluate the outstanding
  29. value that the D86 package offers you.  I assure you that you
  30. will not be disappointed.
  31.  
  32.  
  33. Legal Terms and Conditions
  34.  
  35. This package is provided to you under the following conditions:
  36.  
  37. 1. You may copy this entire package, and give it to anyone who
  38.    accepts these terms.  The copies you distribute must be
  39.    complete and unmodified.  You do not have to be registered to
  40.    distribute this package.
  41.  
  42. 2. Even if you have not yet obtained full execution rights, you
  43.    may execute the programs in this package, in order to evaluate
  44.    them.  If you decide that D86 is of use to you, you must
  45.    become a registered user by sending $50 US ($52 overseas) to:
  46.  
  47.       Eric Isaacson
  48.       416 E. University Ave.
  49.       Bloomington, IN 47401-4739
  50.  
  51.    For your convenience, I now accept Visa, MasterCard and
  52.    American Express, by telephone or mail.  My number is
  53.    (812)339-1811.
  54.                                                               1-2
  55.  
  56.    For the convenience of users in Great Britain, I have
  57.    authorized the firm Atlantic Coast Plc to collect
  58.    registrations for me.  We'll try to keep the prices about the
  59.    same whether you register through me or through them; it's
  60.    your choice.  Their address is The Shareware Village, Colyton,
  61.    Devon EX13 6HA, telephone 01297 552222.  They'll send me a
  62.    list of registered users at the end of every month, and I'll
  63.    send an acknowledgement to each user when I get the list.  So
  64.    if you haven't heard from me by the end of the month following
  65.    your registration with them, please let me know.
  66.  
  67.    Your registration includes the latest diskette (3.5 inch, or
  68.    high-density 5.25 inch), that also includes the INSTALLD and
  69.    MAPD86 tools available to registered users only.  You may
  70.    order further updates for $10 US, or $12 US if you are
  71.    overseas.  Once you register for this package, you are
  72.    registered for all future versions -- you have permanent
  73.    rights to execute D86 on one computer.  As long as I'm in
  74.    business, you can get the latest version for just the update
  75.    fee.
  76.  
  77.    To use D86, you must have the associated assembler, A86.  A
  78.    copy of A86 (without all of its documentation) is included in
  79.    the D86 package.  If you are using D86 to debug only programs
  80.    written in languages other than A86, then you do not need to
  81.    register for A86.  If you are programming in A86, then you
  82.    must register for A86.  There is a discount for combined
  83.    registration of A86 and D86.  Instead of $50+$50 = $100, the
  84.    charge for both packages is $80 ($82 overseas), without the
  85.    printed manual.
  86.  
  87.    I also offer a printed version of this manual, covering both
  88.    A86 and D86. The manual is printed on sheets 8.5 inches high
  89.    and 7 inches wide, with a plastic ring-style binding so the
  90.    book can lay flat.  If you order with your registration the
  91.    manual is an extra $10 to North America, $15 overseas.  If
  92.    you've already registered and now want the manual, add $10
  93.    ($12 overseas) for the update disk that the manual is bundled
  94.    with.  There is a limit of one manual per computer registered
  95.    (except you may reorder when there is a substantial revision
  96.    to the manual).
  97.  
  98.    Indiana residents need to add sales tax.  At the current rate
  99.    of 5%, the prices for Indiana residents are $52.50 for one
  100.    product, $63 one product with manual, $84 both products,
  101.    $94.50 both products with manual, $21 manual if already
  102.    registered.
  103.  
  104.    Educational institutions and training facilities MUST be
  105.    registered in order to use D86 in courses.  Contact me for
  106.    special terms.
  107.  
  108.    Companies and government agencies MUST be registered in order
  109.    to use D86 for their work.  Again, contact me for special
  110.    terms.
  111.                                                               1-3
  112.  
  113. 3. You may not sell this package to anyone.  If you distribute
  114.    this package on a diskette, any fees you collect must be
  115.    specified as materials/handling, and may not exceed $10 for
  116.    the diskette.
  117.  
  118. 4. You are completely responsible for determining the fitness or
  119.    usability of this package.  I will not be liable for any
  120.    damages, of any kind, arising from any failure of any programs
  121.    in this package to perform as expected.
  122.  
  123.  
  124. Registration Benefits
  125.  
  126. Thank you for enduring the legalities.  They are there to protect
  127. me, and also to convince you that this is my business, from which
  128. I expect to make a living.  I'll now return to a softer sell, to
  129. try to make you want to register for my products.
  130.  
  131. There is a certain amount of ambiguity about when you're still
  132. evaluating D86, and when you're really using D86 and should
  133. register for it.  Some cases are clear (e.g., you're a school
  134. using D86 to teach a course); but many are not.  In practical
  135. reality, it up to you to decide: you are "on your honor". Also in
  136. practical reality, most users who ought to register haven't, yet.
  137. For most, it's not dishonesty but merely procrastination.  So I
  138. have provided some incentives, to prod you into registering.
  139.  
  140. One incentive is the printed manual, which only registered users
  141. can purchase.  I haven't left anything out of the disk version of
  142. the manual, but the printed version is formatted and bound much
  143. more nicely than if you print it yourself.
  144.  
  145. Another incentive, included if you register both A86 and D86, is
  146. a preliminary test version of A386 and D386.  At this writing,
  147. all instructions though the Pentium are implemented, except
  148. assembly to a 32-bit protected-mode segment (in which you need
  149. override bytes for 16-bit operands instead of 32-bit operands).
  150.  
  151. Another incentive is a file REG_ONLY.ZIP containing extra tools
  152. that enhance D86's usefulness.  If you program in languages other
  153. than A86, and produce the program with a linker, you can use the
  154. tool MAPD86 to convert a link MAP listing into a SYM file
  155. readable by D86, so you can do symbolic debugging. If you have a
  156. 386-based machine, you can add the D command to D86, allowing you
  157. to set memory breakpoints.
  158.  
  159. Finally, there are the intangible incentives.  You know you've
  160. done the right thing.  You're letting me know that you appreciate
  161. what I've done.  You're letting the world know that quality
  162. software can succeed when distributed as shareware.
  163.                                                               1-4
  164.  
  165. Overview of D86
  166.  
  167. D86 is a screen-oriented program that allows you to troubleshoot
  168. faulty computer programs written for the IBM-PC and all
  169. compatibles, Wang-PC, TI-PC, Tandy 2000, DEC Rainbow, and Sanyo
  170. computer.  It "freezes" the state of your program, and allows you
  171. to investigate the values of registers, flags, and memory.  You
  172. can monitor your program's execution by stepping it one
  173. instruction or procedure at a time; or you can start your program
  174. running, telling D86 to stop it when it reaches certain
  175. locations.  D86 recognizes the symbol-table output of the A86
  176. assembler, creating a symbolic disassembly of your A86 program,
  177. and allowing you to refer to locations and variables by name.
  178.  
  179. The primary design criterion for D86 is ease of use.  This is
  180. reflected in the most notable features of D86:
  181.  
  182. * You don't need to ask D86 what the values of registers and
  183.   flags are.  They are there, automatically, at a fixed location
  184.   on the screen.
  185.  
  186. * You don't need to ask D86 where in your program you are
  187.   stopped.  A disassembly is always generated, at another fixed
  188.   location on the screen. The disassembly gives a hefty chunk of
  189.   your program, not just the single instruction you are at.  A
  190.   cursor next to the disassembly marks the current location.  The
  191.   disassembly chunk remains fixed as you step though it, allowing
  192.   you to follow the flow of the program much more easily.  If you
  193.   wrote the program using A86, the disassembly is symbolic,
  194.   giving instruction operands by name, and labelling disassembly
  195.   locations when possible.
  196.  
  197. * You don't need to ask D86 what is on the machine stack. A
  198.   display of the top elements of the stack is always generated,
  199.   at yet another fixed location on the screen.
  200.  
  201. * You can set up windows into memory, displaying memory contents
  202.   in a variety of types.  The types can even be mixed, to display
  203.   complicated structures. The windows will stay at the same
  204.   location until you turn them off, allowing you to watch what
  205.   your program is doing to those memory locations.
  206.  
  207. * If you have an 8087 or 287 floating-point chip, D86 will
  208.   generate complete window of the 87 state.  The values of the
  209.   stack elements are in a readable decimal format, with
  210.   suppression of unneccessary zeroes, and scientific notation
  211.   only if necessary.
  212.  
  213. * You can, at any time, enable a help-window, to guide you
  214.   through debugger commands.  You will be astounded by the
  215.   sophistication of this help-facility, especially since other
  216.   debuggers offer no on-line help whatsoever.
  217.  
  218. * All of the above-mentioned windows, except for the last two,
  219.   exist on the screen at the same time.  You don't have to switch
  220.   between them.
  221.                                                               1-5
  222.  
  223. * You can single-step your program with single keystrokes, rather
  224.   than sequences of arcane commands.  There are several flavors
  225.   of single-step keys, clustered together on the function-keypad.
  226.   This, combined with the automatic nature of the display, allows
  227.   you to single-step very quickly.  You feel like you are
  228.   actually watching your program run.
  229.  
  230. * Much of D86's command language is simply the A86 assembly
  231.   language itself. You can type in any A86 instruction, to be
  232.   executed immediately.  You use this to set registers and
  233.   variables, perform arithmetic, jump to another location, etc.
  234.   The immediate-execution feature makes D86 the most effective
  235.   tool available for teaching 86 architecture: the student can
  236.   watch the effects of instructions on registers, flags, and
  237.   memory.
  238.  
  239. * You can patch programs in memory, using the full power of the
  240.   A86 assembly language.
  241.  
  242.  
  243. How to Contact Me
  244.  
  245. I have no plans to move from my present location at least through
  246. the millennium.  So you can write to:
  247.  
  248.     Eric Isaacson Software
  249.     416 East University Ave.
  250.     Bloomington, IN 47401-4739
  251.  
  252. or call (812)339-1811.
  253.  
  254. Sorry, I can't guarantee to return everybody's long distance
  255. calls.  If you'd like to be SURE I'll get back to you, please
  256. invite me to call you back collect, or tell me to charge the cost
  257. of the call to your credit card.
  258.  
  259. I also have a section on Compuserve: just type GO ZIPKEY to any !
  260. prompt.  (ZIPKEY is the name of my other product line, a pop-up
  261. zipcode directory.)  My Internet address is
  262. 71333.3154@compuserve.com.
  263.  
  264. If you have extraordinary difficulty contacting me, write the ASP
  265. Ombudsman, 545 Grover Road, Muskegon, MI 49442-9427.  He'll also
  266. try to mediate any business problems people might have with
  267. shareware authors or distributors.
  268.  
  269. PLEASE contact me if you find bugs in my programs; I'll fix them!
  270. I accept bug reports from anyone, registered or non-registered,
  271. no questions asked.  It's very frustrating to hear about people
  272. telling each other about bugs, and not telling me.  I still await
  273. Greg Wettstein's bug list.
  274.  
  275.